import 'package:love_newf/generated/json/base/json_convert_content.dart';
import 'package:love_newf/app/com/model/room_data_model.dart';
import 'package:love_newf/app/com/base/L.dart';

import 'package:love_newf/app/com/model/user_info_model.dart';

import 'package:love_newf/app/page/live/live_logic.dart';


RoomDataModel $RoomDataModelFromJson(Map<String, dynamic> json) {
  final RoomDataModel roomDataModel = RoomDataModel();
  final int? msgType = jsonConvert.convert<int>(json['msgType']);
  if (msgType != null) {
    roomDataModel.msgType = msgType;
  }
  final int? roomLiveCheck = jsonConvert.convert<int>(json['roomLiveCheck']);
  if (roomLiveCheck != null) {
    roomDataModel.roomLiveCheck = roomLiveCheck;
  }
  final int? requestId = jsonConvert.convert<int>(json['requestId']);
  if (requestId != null) {
    roomDataModel.requestId = requestId;
  }
  final RoomDataApplyOnlineVo? applyOnlineVo = jsonConvert.convert<
      RoomDataApplyOnlineVo>(json['applyOnlineVo']);
  if (applyOnlineVo != null) {
    roomDataModel.applyOnlineVo = applyOnlineVo;
  }
  final RoomDataGivePropMsg? givePropMsg = jsonConvert.convert<
      RoomDataGivePropMsg>(json['givePropMsg']);
  if (givePropMsg != null) {
    roomDataModel.givePropMsg = givePropMsg;
  }
  final RoomDataInputSteamMsg? inputSteamMsg = jsonConvert.convert<
      RoomDataInputSteamMsg>(json['inputSteamMsg']);
  if (inputSteamMsg != null) {
    roomDataModel.inputSteamMsg = inputSteamMsg;
  }
  final RoomDataBindAngelVO? bindAngelVO = jsonConvert.convert<
      RoomDataBindAngelVO>(json['bindAngelVO']);
  if (bindAngelVO != null) {
    roomDataModel.bindAngelVO = bindAngelVO;
  }
  final RoomDataRoomChangeVO? roomChangeVO = jsonConvert.convert<
      RoomDataRoomChangeVO>(json['roomChangeVO']);
  if (roomChangeVO != null) {
    roomDataModel.roomChangeVO = roomChangeVO;
  }
  final RoomDataJoinRoomEffectVO? joinRoomEffectVO = jsonConvert.convert<
      RoomDataJoinRoomEffectVO>(json['joinRoomEffectVO']);
  if (joinRoomEffectVO != null) {
    roomDataModel.joinRoomEffectVO = joinRoomEffectVO;
  }
  final List<RoomDataRoomMais>? roomMais = (json['roomMais'] as List<dynamic>?)
      ?.map(
          (e) => jsonConvert.convert<RoomDataRoomMais>(e) as RoomDataRoomMais)
      .toList();
  if (roomMais != null) {
    roomDataModel.roomMais = roomMais;
  }
  final RoomDataRoomPKVO? roomPKVO = jsonConvert.convert<RoomDataRoomPKVO>(
      json['roomPKVO']);
  if (roomPKVO != null) {
    roomDataModel.roomPKVO = roomPKVO;
  }
  final RoomDataMusicMsgVO? musicMsgVO = jsonConvert.convert<
      RoomDataMusicMsgVO>(json['musicMsgVO']);
  if (musicMsgVO != null) {
    roomDataModel.musicMsgVO = musicMsgVO;
  }
  final RoomDataToppingVO? toppingVO = jsonConvert.convert<RoomDataToppingVO>(
      json['toppingVO']);
  if (toppingVO != null) {
    roomDataModel.toppingVO = toppingVO;
  }
  final RoomDataJoinTrainVO? joinTrainVO = jsonConvert.convert<
      RoomDataJoinTrainVO>(json['joinTrainVO']);
  if (joinTrainVO != null) {
    roomDataModel.joinTrainVO = joinTrainVO;
  }
  return roomDataModel;
}

Map<String, dynamic> $RoomDataModelToJson(RoomDataModel entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['msgType'] = entity.msgType;
  data['roomLiveCheck'] = entity.roomLiveCheck;
  data['requestId'] = entity.requestId;
  data['applyOnlineVo'] = entity.applyOnlineVo?.toJson();
  data['givePropMsg'] = entity.givePropMsg?.toJson();
  data['inputSteamMsg'] = entity.inputSteamMsg?.toJson();
  data['bindAngelVO'] = entity.bindAngelVO?.toJson();
  data['roomChangeVO'] = entity.roomChangeVO?.toJson();
  data['joinRoomEffectVO'] = entity.joinRoomEffectVO?.toJson();
  data['roomMais'] = entity.roomMais.map((v) => v.toJson()).toList();
  data['roomPKVO'] = entity.roomPKVO?.toJson();
  data['musicMsgVO'] = entity.musicMsgVO?.toJson();
  data['toppingVO'] = entity.toppingVO?.toJson();
  data['joinTrainVO'] = entity.joinTrainVO?.toJson();
  return data;
}

extension RoomDataModelExtension on RoomDataModel {
  RoomDataModel copyWith({
    int? msgType,
    int? roomLiveCheck,
    int? requestId,
    RoomDataApplyOnlineVo? applyOnlineVo,
    RoomDataGivePropMsg? givePropMsg,
    RoomDataInputSteamMsg? inputSteamMsg,
    RoomDataBindAngelVO? bindAngelVO,
    RoomDataRoomChangeVO? roomChangeVO,
    RoomDataJoinRoomEffectVO? joinRoomEffectVO,
    List<RoomDataRoomMais>? roomMais,
    RoomDataRoomPKVO? roomPKVO,
    RoomDataMusicMsgVO? musicMsgVO,
    RoomDataToppingVO? toppingVO,
    RoomDataJoinTrainVO? joinTrainVO,
  }) {
    return RoomDataModel()
      ..msgType = msgType ?? this.msgType
      ..roomLiveCheck = roomLiveCheck ?? this.roomLiveCheck
      ..requestId = requestId ?? this.requestId
      ..applyOnlineVo = applyOnlineVo ?? this.applyOnlineVo
      ..givePropMsg = givePropMsg ?? this.givePropMsg
      ..inputSteamMsg = inputSteamMsg ?? this.inputSteamMsg
      ..bindAngelVO = bindAngelVO ?? this.bindAngelVO
      ..roomChangeVO = roomChangeVO ?? this.roomChangeVO
      ..joinRoomEffectVO = joinRoomEffectVO ?? this.joinRoomEffectVO
      ..roomMais = roomMais ?? this.roomMais
      ..roomPKVO = roomPKVO ?? this.roomPKVO
      ..musicMsgVO = musicMsgVO ?? this.musicMsgVO
      ..toppingVO = toppingVO ?? this.toppingVO
      ..joinTrainVO = joinTrainVO ?? this.joinTrainVO;
  }
}

RoomDataApplyOnlineVo $RoomDataApplyOnlineVoFromJson(
    Map<String, dynamic> json) {
  final RoomDataApplyOnlineVo roomDataApplyOnlineVo = RoomDataApplyOnlineVo();
  final int? applyCountMan = jsonConvert.convert<int>(json['applyCountMan']);
  if (applyCountMan != null) {
    roomDataApplyOnlineVo.applyCountMan = applyCountMan;
  }
  final int? applyCountWoman = jsonConvert.convert<int>(
      json['applyCountWoman']);
  if (applyCountWoman != null) {
    roomDataApplyOnlineVo.applyCountWoman = applyCountWoman;
  }
  final int? onlineCountMan = jsonConvert.convert<int>(json['onlineCountMan']);
  if (onlineCountMan != null) {
    roomDataApplyOnlineVo.onlineCountMan = onlineCountMan;
  }
  final int? onlineCountWoman = jsonConvert.convert<int>(
      json['onlineCountWoman']);
  if (onlineCountWoman != null) {
    roomDataApplyOnlineVo.onlineCountWoman = onlineCountWoman;
  }
  return roomDataApplyOnlineVo;
}

Map<String, dynamic> $RoomDataApplyOnlineVoToJson(
    RoomDataApplyOnlineVo entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['applyCountMan'] = entity.applyCountMan;
  data['applyCountWoman'] = entity.applyCountWoman;
  data['onlineCountMan'] = entity.onlineCountMan;
  data['onlineCountWoman'] = entity.onlineCountWoman;
  return data;
}

extension RoomDataApplyOnlineVoExtension on RoomDataApplyOnlineVo {
  RoomDataApplyOnlineVo copyWith({
    int? applyCountMan,
    int? applyCountWoman,
    int? onlineCountMan,
    int? onlineCountWoman,
  }) {
    return RoomDataApplyOnlineVo()
      ..applyCountMan = applyCountMan ?? this.applyCountMan
      ..applyCountWoman = applyCountWoman ?? this.applyCountWoman
      ..onlineCountMan = onlineCountMan ?? this.onlineCountMan
      ..onlineCountWoman = onlineCountWoman ?? this.onlineCountWoman;
  }
}

RoomDataGivePropMsg $RoomDataGivePropMsgFromJson(Map<String, dynamic> json) {
  final RoomDataGivePropMsg roomDataGivePropMsg = RoomDataGivePropMsg();
  final UserInfoModel? sendUserVO = jsonConvert.convert<UserInfoModel>(
      json['sendUserVO']);
  if (sendUserVO != null) {
    roomDataGivePropMsg.sendUserVO = sendUserVO;
  }
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataGivePropMsg.userId = userId;
  }
  final int? receiveUserId = jsonConvert.convert<int>(json['receiveUserId']);
  if (receiveUserId != null) {
    roomDataGivePropMsg.receiveUserId = receiveUserId;
  }
  final String? receiveNick = jsonConvert.convert<String>(json['receiveNick']);
  if (receiveNick != null) {
    roomDataGivePropMsg.receiveNick = receiveNick;
  }
  final int? propId = jsonConvert.convert<int>(json['propId']);
  if (propId != null) {
    roomDataGivePropMsg.propId = propId;
  }
  final int? action = jsonConvert.convert<int>(json['action']);
  if (action != null) {
    roomDataGivePropMsg.action = action;
  }
  final int? amount = jsonConvert.convert<int>(json['amount']);
  if (amount != null) {
    roomDataGivePropMsg.amount = amount;
  }
  final List<RoomDataGivePropMsgRankVOS>? rankVOS = (json['rankVOS'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<RoomDataGivePropMsgRankVOS>(
          e) as RoomDataGivePropMsgRankVOS).toList();
  if (rankVOS != null) {
    roomDataGivePropMsg.rankVOS = rankVOS;
  }
  final List<
      RoomDataGivePropMsgAnchorReceiveRankVOS>? anchorReceiveRankVOS = (json['anchorReceiveRankVOS'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<RoomDataGivePropMsgAnchorReceiveRankVOS>(
          e) as RoomDataGivePropMsgAnchorReceiveRankVOS).toList();
  if (anchorReceiveRankVOS != null) {
    roomDataGivePropMsg.anchorReceiveRankVOS = anchorReceiveRankVOS;
  }
  final RoomDataGivePropMsgWishRoomUserVO? wishRoomUserVO = jsonConvert.convert<
      RoomDataGivePropMsgWishRoomUserVO>(json['wishRoomUserVO']);
  if (wishRoomUserVO != null) {
    roomDataGivePropMsg.wishRoomUserVO = wishRoomUserVO;
  }
  return roomDataGivePropMsg;
}

Map<String, dynamic> $RoomDataGivePropMsgToJson(RoomDataGivePropMsg entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['sendUserVO'] = entity.sendUserVO?.toJson();
  data['userId'] = entity.userId;
  data['receiveUserId'] = entity.receiveUserId;
  data['receiveNick'] = entity.receiveNick;
  data['propId'] = entity.propId;
  data['action'] = entity.action;
  data['amount'] = entity.amount;
  data['rankVOS'] = entity.rankVOS.map((v) => v.toJson()).toList();
  data['anchorReceiveRankVOS'] =
      entity.anchorReceiveRankVOS.map((v) => v.toJson()).toList();
  data['wishRoomUserVO'] = entity.wishRoomUserVO?.toJson();
  return data;
}

extension RoomDataGivePropMsgExtension on RoomDataGivePropMsg {
  RoomDataGivePropMsg copyWith({
    UserInfoModel? sendUserVO,
    int? userId,
    int? receiveUserId,
    String? receiveNick,
    int? propId,
    int? action,
    int? amount,
    List<RoomDataGivePropMsgRankVOS>? rankVOS,
    List<RoomDataGivePropMsgAnchorReceiveRankVOS>? anchorReceiveRankVOS,
    RoomDataGivePropMsgWishRoomUserVO? wishRoomUserVO,
  }) {
    return RoomDataGivePropMsg()
      ..sendUserVO = sendUserVO ?? this.sendUserVO
      ..userId = userId ?? this.userId
      ..receiveUserId = receiveUserId ?? this.receiveUserId
      ..receiveNick = receiveNick ?? this.receiveNick
      ..propId = propId ?? this.propId
      ..action = action ?? this.action
      ..amount = amount ?? this.amount
      ..rankVOS = rankVOS ?? this.rankVOS
      ..anchorReceiveRankVOS = anchorReceiveRankVOS ?? this.anchorReceiveRankVOS
      ..wishRoomUserVO = wishRoomUserVO ?? this.wishRoomUserVO;
  }
}

RoomDataGivePropMsgSendUserVO $RoomDataGivePropMsgSendUserVOFromJson(
    Map<String, dynamic> json) {
  final RoomDataGivePropMsgSendUserVO roomDataGivePropMsgSendUserVO = RoomDataGivePropMsgSendUserVO();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataGivePropMsgSendUserVO.userId = userId;
  }
  final String? userCode = jsonConvert.convert<String>(json['userCode']);
  if (userCode != null) {
    roomDataGivePropMsgSendUserVO.userCode = userCode;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataGivePropMsgSendUserVO.avatar = avatar;
  }
  final String? nick = jsonConvert.convert<String>(json['nick']);
  if (nick != null) {
    roomDataGivePropMsgSendUserVO.nick = nick;
  }
  final int? sex = jsonConvert.convert<int>(json['sex']);
  if (sex != null) {
    roomDataGivePropMsgSendUserVO.sex = sex;
  }
  final int? age = jsonConvert.convert<int>(json['age']);
  if (age != null) {
    roomDataGivePropMsgSendUserVO.age = age;
  }
  final String? avatarFrameUrl = jsonConvert.convert<String>(
      json['avatarFrameUrl']);
  if (avatarFrameUrl != null) {
    roomDataGivePropMsgSendUserVO.avatarFrameUrl = avatarFrameUrl;
  }
  final int? vipGrade = jsonConvert.convert<int>(json['vipGrade']);
  if (vipGrade != null) {
    roomDataGivePropMsgSendUserVO.vipGrade = vipGrade;
  }
  final List<
      RoomDataGivePropMsgSendUserVOUserLabels>? userLabels = (json['userLabels'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<RoomDataGivePropMsgSendUserVOUserLabels>(
          e) as RoomDataGivePropMsgSendUserVOUserLabels).toList();
  if (userLabels != null) {
    roomDataGivePropMsgSendUserVO.userLabels = userLabels;
  }
  final int? prohibition = jsonConvert.convert<int>(json['prohibition']);
  if (prohibition != null) {
    roomDataGivePropMsgSendUserVO.prohibition = prohibition;
  }
  final String? beautifulCodeUrl = jsonConvert.convert<String>(
      json['beautifulCodeUrl']);
  if (beautifulCodeUrl != null) {
    roomDataGivePropMsgSendUserVO.beautifulCodeUrl = beautifulCodeUrl;
  }
  final String? chatFrameUrl = jsonConvert.convert<String>(
      json['chatFrameUrl']);
  if (chatFrameUrl != null) {
    roomDataGivePropMsgSendUserVO.chatFrameUrl = chatFrameUrl;
  }
  return roomDataGivePropMsgSendUserVO;
}

Map<String, dynamic> $RoomDataGivePropMsgSendUserVOToJson(
    RoomDataGivePropMsgSendUserVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['userCode'] = entity.userCode;
  data['avatar'] = entity.avatar;
  data['nick'] = entity.nick;
  data['sex'] = entity.sex;
  data['age'] = entity.age;
  data['avatarFrameUrl'] = entity.avatarFrameUrl;
  data['vipGrade'] = entity.vipGrade;
  data['userLabels'] = entity.userLabels.map((v) => v.toJson()).toList();
  data['prohibition'] = entity.prohibition;
  data['beautifulCodeUrl'] = entity.beautifulCodeUrl;
  data['chatFrameUrl'] = entity.chatFrameUrl;
  return data;
}

extension RoomDataGivePropMsgSendUserVOExtension on RoomDataGivePropMsgSendUserVO {
  RoomDataGivePropMsgSendUserVO copyWith({
    int? userId,
    String? userCode,
    String? avatar,
    String? nick,
    int? sex,
    int? age,
    String? avatarFrameUrl,
    int? vipGrade,
    List<RoomDataGivePropMsgSendUserVOUserLabels>? userLabels,
    int? prohibition,
    String? beautifulCodeUrl,
    String? chatFrameUrl,
  }) {
    return RoomDataGivePropMsgSendUserVO()
      ..userId = userId ?? this.userId
      ..userCode = userCode ?? this.userCode
      ..avatar = avatar ?? this.avatar
      ..nick = nick ?? this.nick
      ..sex = sex ?? this.sex
      ..age = age ?? this.age
      ..avatarFrameUrl = avatarFrameUrl ?? this.avatarFrameUrl
      ..vipGrade = vipGrade ?? this.vipGrade
      ..userLabels = userLabels ?? this.userLabels
      ..prohibition = prohibition ?? this.prohibition
      ..beautifulCodeUrl = beautifulCodeUrl ?? this.beautifulCodeUrl
      ..chatFrameUrl = chatFrameUrl ?? this.chatFrameUrl;
  }
}

RoomDataGivePropMsgSendUserVOUserLabels $RoomDataGivePropMsgSendUserVOUserLabelsFromJson(
    Map<String, dynamic> json) {
  final RoomDataGivePropMsgSendUserVOUserLabels roomDataGivePropMsgSendUserVOUserLabels = RoomDataGivePropMsgSendUserVOUserLabels();
  final int? anchorUserId = jsonConvert.convert<int>(json['anchorUserId']);
  if (anchorUserId != null) {
    roomDataGivePropMsgSendUserVOUserLabels.anchorUserId = anchorUserId;
  }
  final String? labelName = jsonConvert.convert<String>(json['labelName']);
  if (labelName != null) {
    roomDataGivePropMsgSendUserVOUserLabels.labelName = labelName;
  }
  final int? labelType = jsonConvert.convert<int>(json['labelType']);
  if (labelType != null) {
    roomDataGivePropMsgSendUserVOUserLabels.labelType = labelType;
  }
  final String? url = jsonConvert.convert<String>(json['url']);
  if (url != null) {
    roomDataGivePropMsgSendUserVOUserLabels.url = url;
  }
  return roomDataGivePropMsgSendUserVOUserLabels;
}

Map<String, dynamic> $RoomDataGivePropMsgSendUserVOUserLabelsToJson(
    RoomDataGivePropMsgSendUserVOUserLabels entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['anchorUserId'] = entity.anchorUserId;
  data['labelName'] = entity.labelName;
  data['labelType'] = entity.labelType;
  data['url'] = entity.url;
  return data;
}

extension RoomDataGivePropMsgSendUserVOUserLabelsExtension on RoomDataGivePropMsgSendUserVOUserLabels {
  RoomDataGivePropMsgSendUserVOUserLabels copyWith({
    int? anchorUserId,
    String? labelName,
    int? labelType,
    String? url,
  }) {
    return RoomDataGivePropMsgSendUserVOUserLabels()
      ..anchorUserId = anchorUserId ?? this.anchorUserId
      ..labelName = labelName ?? this.labelName
      ..labelType = labelType ?? this.labelType
      ..url = url ?? this.url;
  }
}

RoomDataGivePropMsgRankVOS $RoomDataGivePropMsgRankVOSFromJson(
    Map<String, dynamic> json) {
  final RoomDataGivePropMsgRankVOS roomDataGivePropMsgRankVOS = RoomDataGivePropMsgRankVOS();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataGivePropMsgRankVOS.userId = userId;
  }
  final int? tokens = jsonConvert.convert<int>(json['tokens']);
  if (tokens != null) {
    roomDataGivePropMsgRankVOS.tokens = tokens;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataGivePropMsgRankVOS.avatar = avatar;
  }
  return roomDataGivePropMsgRankVOS;
}

Map<String, dynamic> $RoomDataGivePropMsgRankVOSToJson(
    RoomDataGivePropMsgRankVOS entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['tokens'] = entity.tokens;
  data['avatar'] = entity.avatar;
  return data;
}

extension RoomDataGivePropMsgRankVOSExtension on RoomDataGivePropMsgRankVOS {
  RoomDataGivePropMsgRankVOS copyWith({
    int? userId,
    int? tokens,
    String? avatar,
  }) {
    return RoomDataGivePropMsgRankVOS()
      ..userId = userId ?? this.userId
      ..tokens = tokens ?? this.tokens
      ..avatar = avatar ?? this.avatar;
  }
}

RoomDataGivePropMsgAnchorReceiveRankVOS $RoomDataGivePropMsgAnchorReceiveRankVOSFromJson(
    Map<String, dynamic> json) {
  final RoomDataGivePropMsgAnchorReceiveRankVOS roomDataGivePropMsgAnchorReceiveRankVOS = RoomDataGivePropMsgAnchorReceiveRankVOS();
  final int? anchorUserId = jsonConvert.convert<int>(json['anchorUserId']);
  if (anchorUserId != null) {
    roomDataGivePropMsgAnchorReceiveRankVOS.anchorUserId = anchorUserId;
  }
  final String? nick = jsonConvert.convert<String>(json['nick']);
  if (nick != null) {
    roomDataGivePropMsgAnchorReceiveRankVOS.nick = nick;
  }
  final int? maiIndex = jsonConvert.convert<int>(json['maiIndex']);
  if (maiIndex != null) {
    roomDataGivePropMsgAnchorReceiveRankVOS.maiIndex = maiIndex;
  }
  final List<
      RoomDataGivePropMsgAnchorReceiveRankVOSWishes>? wishes = (json['wishes'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<
          RoomDataGivePropMsgAnchorReceiveRankVOSWishes>(
          e) as RoomDataGivePropMsgAnchorReceiveRankVOSWishes).toList();
  if (wishes != null) {
    roomDataGivePropMsgAnchorReceiveRankVOS.wishes = wishes;
  }
  final int? receiveTotal = jsonConvert.convert<int>(json['receiveTotal']);
  if (receiveTotal != null) {
    roomDataGivePropMsgAnchorReceiveRankVOS.receiveTotal = receiveTotal;
  }
  final List<
      RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS>? rankVOS = (json['rankVOS'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<
          RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS>(
          e) as RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS).toList();
  if (rankVOS != null) {
    roomDataGivePropMsgAnchorReceiveRankVOS.rankVOS = rankVOS;
  }
  return roomDataGivePropMsgAnchorReceiveRankVOS;
}

Map<String, dynamic> $RoomDataGivePropMsgAnchorReceiveRankVOSToJson(
    RoomDataGivePropMsgAnchorReceiveRankVOS entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['anchorUserId'] = entity.anchorUserId;
  data['nick'] = entity.nick;
  data['maiIndex'] = entity.maiIndex;
  data['wishes'] = entity.wishes.map((v) => v.toJson()).toList();
  data['receiveTotal'] = entity.receiveTotal;
  data['rankVOS'] = entity.rankVOS.map((v) => v.toJson()).toList();
  return data;
}

extension RoomDataGivePropMsgAnchorReceiveRankVOSExtension on RoomDataGivePropMsgAnchorReceiveRankVOS {
  RoomDataGivePropMsgAnchorReceiveRankVOS copyWith({
    int? anchorUserId,
    String? nick,
    int? maiIndex,
    List<RoomDataGivePropMsgAnchorReceiveRankVOSWishes>? wishes,
    int? receiveTotal,
    List<RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS>? rankVOS,
  }) {
    return RoomDataGivePropMsgAnchorReceiveRankVOS()
      ..anchorUserId = anchorUserId ?? this.anchorUserId
      ..nick = nick ?? this.nick
      ..maiIndex = maiIndex ?? this.maiIndex
      ..wishes = wishes ?? this.wishes
      ..receiveTotal = receiveTotal ?? this.receiveTotal
      ..rankVOS = rankVOS ?? this.rankVOS;
  }
}

RoomDataGivePropMsgAnchorReceiveRankVOSWishes $RoomDataGivePropMsgAnchorReceiveRankVOSWishesFromJson(
    Map<String, dynamic> json) {
  final RoomDataGivePropMsgAnchorReceiveRankVOSWishes roomDataGivePropMsgAnchorReceiveRankVOSWishes = RoomDataGivePropMsgAnchorReceiveRankVOSWishes();
  final int? id = jsonConvert.convert<int>(json['id']);
  if (id != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSWishes.id = id;
  }
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSWishes.userId = userId;
  }
  final int? propId = jsonConvert.convert<int>(json['propId']);
  if (propId != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSWishes.propId = propId;
  }
  final int? propNum = jsonConvert.convert<int>(json['propNum']);
  if (propNum != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSWishes.propNum = propNum;
  }
  final int? propReceive = jsonConvert.convert<int>(json['propReceive']);
  if (propReceive != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSWishes.propReceive = propReceive;
  }
  final int? status = jsonConvert.convert<int>(json['status']);
  if (status != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSWishes.status = status;
  }
  final int? propOrder = jsonConvert.convert<int>(json['propOrder']);
  if (propOrder != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSWishes.propOrder = propOrder;
  }
  final String? createTime = jsonConvert.convert<String>(json['createTime']);
  if (createTime != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSWishes.createTime = createTime;
  }
  final int? deleteFlag = jsonConvert.convert<int>(json['deleteFlag']);
  if (deleteFlag != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSWishes.deleteFlag = deleteFlag;
  }
  return roomDataGivePropMsgAnchorReceiveRankVOSWishes;
}

Map<String, dynamic> $RoomDataGivePropMsgAnchorReceiveRankVOSWishesToJson(
    RoomDataGivePropMsgAnchorReceiveRankVOSWishes entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['id'] = entity.id;
  data['userId'] = entity.userId;
  data['propId'] = entity.propId;
  data['propNum'] = entity.propNum;
  data['propReceive'] = entity.propReceive;
  data['status'] = entity.status;
  data['propOrder'] = entity.propOrder;
  data['createTime'] = entity.createTime;
  data['deleteFlag'] = entity.deleteFlag;
  return data;
}

extension RoomDataGivePropMsgAnchorReceiveRankVOSWishesExtension on RoomDataGivePropMsgAnchorReceiveRankVOSWishes {
  RoomDataGivePropMsgAnchorReceiveRankVOSWishes copyWith({
    int? id,
    int? userId,
    int? propId,
    int? propNum,
    int? propReceive,
    int? status,
    int? propOrder,
    String? createTime,
    int? deleteFlag,
  }) {
    return RoomDataGivePropMsgAnchorReceiveRankVOSWishes()
      ..id = id ?? this.id
      ..userId = userId ?? this.userId
      ..propId = propId ?? this.propId
      ..propNum = propNum ?? this.propNum
      ..propReceive = propReceive ?? this.propReceive
      ..status = status ?? this.status
      ..propOrder = propOrder ?? this.propOrder
      ..createTime = createTime ?? this.createTime
      ..deleteFlag = deleteFlag ?? this.deleteFlag;
  }
}

RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS $RoomDataGivePropMsgAnchorReceiveRankVOSRankVOSFromJson(
    Map<String, dynamic> json) {
  final RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS roomDataGivePropMsgAnchorReceiveRankVOSRankVOS = RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSRankVOS.userId = userId;
  }
  final int? tokens = jsonConvert.convert<int>(json['tokens']);
  if (tokens != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSRankVOS.tokens = tokens;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataGivePropMsgAnchorReceiveRankVOSRankVOS.avatar = avatar;
  }
  return roomDataGivePropMsgAnchorReceiveRankVOSRankVOS;
}

Map<String, dynamic> $RoomDataGivePropMsgAnchorReceiveRankVOSRankVOSToJson(
    RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['tokens'] = entity.tokens;
  data['avatar'] = entity.avatar;
  return data;
}

extension RoomDataGivePropMsgAnchorReceiveRankVOSRankVOSExtension on RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS {
  RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS copyWith({
    int? userId,
    int? tokens,
    String? avatar,
  }) {
    return RoomDataGivePropMsgAnchorReceiveRankVOSRankVOS()
      ..userId = userId ?? this.userId
      ..tokens = tokens ?? this.tokens
      ..avatar = avatar ?? this.avatar;
  }
}

RoomDataGivePropMsgWishRoomUserVO $RoomDataGivePropMsgWishRoomUserVOFromJson(
    Map<String, dynamic> json) {
  final RoomDataGivePropMsgWishRoomUserVO roomDataGivePropMsgWishRoomUserVO = RoomDataGivePropMsgWishRoomUserVO();
  final int? propNum = jsonConvert.convert<int>(json['propNum']);
  if (propNum != null) {
    roomDataGivePropMsgWishRoomUserVO.propNum = propNum;
  }
  final int? propReceive = jsonConvert.convert<int>(json['propReceive']);
  if (propReceive != null) {
    roomDataGivePropMsgWishRoomUserVO.propReceive = propReceive;
  }
  return roomDataGivePropMsgWishRoomUserVO;
}

Map<String, dynamic> $RoomDataGivePropMsgWishRoomUserVOToJson(
    RoomDataGivePropMsgWishRoomUserVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['propNum'] = entity.propNum;
  data['propReceive'] = entity.propReceive;
  return data;
}

extension RoomDataGivePropMsgWishRoomUserVOExtension on RoomDataGivePropMsgWishRoomUserVO {
  RoomDataGivePropMsgWishRoomUserVO copyWith({
    int? propNum,
    int? propReceive,
  }) {
    return RoomDataGivePropMsgWishRoomUserVO()
      ..propNum = propNum ?? this.propNum
      ..propReceive = propReceive ?? this.propReceive;
  }
}

RoomDataInputSteamMsg $RoomDataInputSteamMsgFromJson(
    Map<String, dynamic> json) {
  final RoomDataInputSteamMsg roomDataInputSteamMsg = RoomDataInputSteamMsg();
  final int? roomId = jsonConvert.convert<int>(json['roomId']);
  if (roomId != null) {
    roomDataInputSteamMsg.roomId = roomId;
  }
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataInputSteamMsg.userId = userId;
  }
  final int? maiIndex = jsonConvert.convert<int>(json['maiIndex']);
  if (maiIndex != null) {
    roomDataInputSteamMsg.maiIndex = maiIndex;
  }
  final String? inputStreamId = jsonConvert.convert<String>(
      json['inputStreamId']);
  if (inputStreamId != null) {
    roomDataInputSteamMsg.inputStreamId = inputStreamId;
  }
  final int? maiOpen = jsonConvert.convert<int>(json['maiOpen']);
  if (maiOpen != null) {
    roomDataInputSteamMsg.maiOpen = maiOpen;
  }
  final int? maiStatus = jsonConvert.convert<int>(json['maiStatus']);
  if (maiStatus != null) {
    roomDataInputSteamMsg.maiStatus = maiStatus;
  }
  final int? exclusive = jsonConvert.convert<int>(json['exclusive']);
  if (exclusive != null) {
    roomDataInputSteamMsg.exclusive = exclusive;
  }
  final int? roomType = jsonConvert.convert<int>(json['roomType']);
  if (roomType != null) {
    roomDataInputSteamMsg.roomType = roomType;
  }
  return roomDataInputSteamMsg;
}

Map<String, dynamic> $RoomDataInputSteamMsgToJson(
    RoomDataInputSteamMsg entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['roomId'] = entity.roomId;
  data['userId'] = entity.userId;
  data['maiIndex'] = entity.maiIndex;
  data['inputStreamId'] = entity.inputStreamId;
  data['maiOpen'] = entity.maiOpen;
  data['maiStatus'] = entity.maiStatus;
  data['exclusive'] = entity.exclusive;
  data['roomType'] = entity.roomType;
  return data;
}

extension RoomDataInputSteamMsgExtension on RoomDataInputSteamMsg {
  RoomDataInputSteamMsg copyWith({
    int? roomId,
    int? userId,
    int? maiIndex,
    String? inputStreamId,
    int? maiOpen,
    int? maiStatus,
    int? exclusive,
    int? roomType,
  }) {
    return RoomDataInputSteamMsg()
      ..roomId = roomId ?? this.roomId
      ..userId = userId ?? this.userId
      ..maiIndex = maiIndex ?? this.maiIndex
      ..inputStreamId = inputStreamId ?? this.inputStreamId
      ..maiOpen = maiOpen ?? this.maiOpen
      ..maiStatus = maiStatus ?? this.maiStatus
      ..exclusive = exclusive ?? this.exclusive
      ..roomType = roomType ?? this.roomType;
  }
}

RoomDataBindAngelVO $RoomDataBindAngelVOFromJson(Map<String, dynamic> json) {
  final RoomDataBindAngelVO roomDataBindAngelVO = RoomDataBindAngelVO();
  final int? anchorUserId = jsonConvert.convert<int>(json['anchorUserId']);
  if (anchorUserId != null) {
    roomDataBindAngelVO.anchorUserId = anchorUserId;
  }
  final int? maiIndex = jsonConvert.convert<int>(json['maiIndex']);
  if (maiIndex != null) {
    roomDataBindAngelVO.maiIndex = maiIndex;
  }
  final String? anchorAvatar = jsonConvert.convert<String>(
      json['anchorAvatar']);
  if (anchorAvatar != null) {
    roomDataBindAngelVO.anchorAvatar = anchorAvatar;
  }
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataBindAngelVO.userId = userId;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataBindAngelVO.avatar = avatar;
  }
  final int? angelType = jsonConvert.convert<int>(json['angelType']);
  if (angelType != null) {
    roomDataBindAngelVO.angelType = angelType;
  }
  final int? propId = jsonConvert.convert<int>(json['propId']);
  if (propId != null) {
    roomDataBindAngelVO.propId = propId;
  }
  return roomDataBindAngelVO;
}

Map<String, dynamic> $RoomDataBindAngelVOToJson(RoomDataBindAngelVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['anchorUserId'] = entity.anchorUserId;
  data['maiIndex'] = entity.maiIndex;
  data['anchorAvatar'] = entity.anchorAvatar;
  data['userId'] = entity.userId;
  data['avatar'] = entity.avatar;
  data['angelType'] = entity.angelType;
  data['propId'] = entity.propId;
  return data;
}

extension RoomDataBindAngelVOExtension on RoomDataBindAngelVO {
  RoomDataBindAngelVO copyWith({
    int? anchorUserId,
    int? maiIndex,
    String? anchorAvatar,
    int? userId,
    String? avatar,
    int? angelType,
    int? propId,
  }) {
    return RoomDataBindAngelVO()
      ..anchorUserId = anchorUserId ?? this.anchorUserId
      ..maiIndex = maiIndex ?? this.maiIndex
      ..anchorAvatar = anchorAvatar ?? this.anchorAvatar
      ..userId = userId ?? this.userId
      ..avatar = avatar ?? this.avatar
      ..angelType = angelType ?? this.angelType
      ..propId = propId ?? this.propId;
  }
}

RoomDataRoomChangeVO $RoomDataRoomChangeVOFromJson(Map<String, dynamic> json) {
  final RoomDataRoomChangeVO roomDataRoomChangeVO = RoomDataRoomChangeVO();
  final int? tokens = jsonConvert.convert<int>(json['tokens']);
  if (tokens != null) {
    roomDataRoomChangeVO.tokens = tokens;
  }
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataRoomChangeVO.userId = userId;
  }
  final int? roomType = jsonConvert.convert<int>(json['roomType']);
  if (roomType != null) {
    roomDataRoomChangeVO.roomType = roomType;
  }
  return roomDataRoomChangeVO;
}

Map<String, dynamic> $RoomDataRoomChangeVOToJson(RoomDataRoomChangeVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['tokens'] = entity.tokens;
  data['userId'] = entity.userId;
  data['roomType'] = entity.roomType;
  return data;
}

extension RoomDataRoomChangeVOExtension on RoomDataRoomChangeVO {
  RoomDataRoomChangeVO copyWith({
    int? tokens,
    int? userId,
    int? roomType,
  }) {
    return RoomDataRoomChangeVO()
      ..tokens = tokens ?? this.tokens
      ..userId = userId ?? this.userId
      ..roomType = roomType ?? this.roomType;
  }
}

RoomDataJoinRoomEffectVO $RoomDataJoinRoomEffectVOFromJson(
    Map<String, dynamic> json) {
  final RoomDataJoinRoomEffectVO roomDataJoinRoomEffectVO = RoomDataJoinRoomEffectVO();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataJoinRoomEffectVO.userId = userId;
  }
  final String? nick = jsonConvert.convert<String>(json['nick']);
  if (nick != null) {
    roomDataJoinRoomEffectVO.nick = nick;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataJoinRoomEffectVO.avatar = avatar;
  }
  final int? propId = jsonConvert.convert<int>(json['propId']);
  if (propId != null) {
    roomDataJoinRoomEffectVO.propId = propId;
  }
  final String? bannerUrl = jsonConvert.convert<String>(json['bannerUrl']);
  if (bannerUrl != null) {
    roomDataJoinRoomEffectVO.bannerUrl = bannerUrl;
  }
  return roomDataJoinRoomEffectVO;
}

Map<String, dynamic> $RoomDataJoinRoomEffectVOToJson(
    RoomDataJoinRoomEffectVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['nick'] = entity.nick;
  data['avatar'] = entity.avatar;
  data['propId'] = entity.propId;
  data['bannerUrl'] = entity.bannerUrl;
  return data;
}

extension RoomDataJoinRoomEffectVOExtension on RoomDataJoinRoomEffectVO {
  RoomDataJoinRoomEffectVO copyWith({
    int? userId,
    String? nick,
    String? avatar,
    int? propId,
    String? bannerUrl,
  }) {
    return RoomDataJoinRoomEffectVO()
      ..userId = userId ?? this.userId
      ..nick = nick ?? this.nick
      ..avatar = avatar ?? this.avatar
      ..propId = propId ?? this.propId
      ..bannerUrl = bannerUrl ?? this.bannerUrl;
  }
}

RoomDataRoomMais $RoomDataRoomMaisFromJson(Map<String, dynamic> json) {
  final RoomDataRoomMais roomDataRoomMais = RoomDataRoomMais();
  final int? id = jsonConvert.convert<int>(json['id']);
  if (id != null) {
    roomDataRoomMais.id = id;
  }
  final String? inputStreamId = jsonConvert.convert<String>(
      json['inputStreamId']);
  if (inputStreamId != null) {
    roomDataRoomMais.inputStreamId = inputStreamId;
  }
  final String? outputStreamId = jsonConvert.convert<String>(
      json['outputStreamId']);
  if (outputStreamId != null) {
    roomDataRoomMais.outputStreamId = outputStreamId;
  }
  final int? roomId = jsonConvert.convert<int>(json['roomId']);
  if (roomId != null) {
    roomDataRoomMais.roomId = roomId;
  }
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataRoomMais.userId = userId;
  }
  final int? sex = jsonConvert.convert<int>(json['sex']);
  if (sex != null) {
    roomDataRoomMais.sex = sex;
  }
  final int? maiIndex = jsonConvert.convert<int>(json['maiIndex']);
  if (maiIndex != null) {
    roomDataRoomMais.maiIndex = maiIndex;
  }
  final int? status = jsonConvert.convert<int>(json['status']);
  if (status != null) {
    roomDataRoomMais.status = status;
  }
  final int? maiOpen = jsonConvert.convert<int>(json['maiOpen']);
  if (maiOpen != null) {
    roomDataRoomMais.maiOpen = maiOpen;
  }
  final String? shangMaiTime = jsonConvert.convert<String>(
      json['shangMaiTime']);
  if (shangMaiTime != null) {
    roomDataRoomMais.shangMaiTime = shangMaiTime;
  }
  final String? xiaMaiTime = jsonConvert.convert<String>(json['xiaMaiTime']);
  if (xiaMaiTime != null) {
    roomDataRoomMais.xiaMaiTime = xiaMaiTime;
  }
  final int? liveMinutes = jsonConvert.convert<int>(json['liveMinutes']);
  if (liveMinutes != null) {
    roomDataRoomMais.liveMinutes = liveMinutes;
  }
  final int? receiveTokens = jsonConvert.convert<int>(json['receiveTokens']);
  if (receiveTokens != null) {
    roomDataRoomMais.receiveTokens = receiveTokens;
  }
  final int? deleteFlag = jsonConvert.convert<int>(json['deleteFlag']);
  if (deleteFlag != null) {
    roomDataRoomMais.deleteFlag = deleteFlag;
  }
  final List<
      RoomDataRoomMaisRoomAnchorStickersList>? roomAnchorStickersList = (json['roomAnchorStickersList'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<RoomDataRoomMaisRoomAnchorStickersList>(
          e) as RoomDataRoomMaisRoomAnchorStickersList).toList();
  if (roomAnchorStickersList != null) {
    roomDataRoomMais.roomAnchorStickersList = roomAnchorStickersList;
  }
  final RoomDataRoomMaisMusicVO? musicVO = jsonConvert.convert<
      RoomDataRoomMaisMusicVO>(json['musicVO']);
  if (musicVO != null) {
    roomDataRoomMais.musicVO = musicVO;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataRoomMais.avatar = avatar;
  }
  final String? nick = jsonConvert.convert<String>(json['nick']);
  if (nick != null) {
    roomDataRoomMais.nick = nick;
  }
  return roomDataRoomMais;
}

Map<String, dynamic> $RoomDataRoomMaisToJson(RoomDataRoomMais entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['id'] = entity.id;
  data['inputStreamId'] = entity.inputStreamId;
  data['outputStreamId'] = entity.outputStreamId;
  data['roomId'] = entity.roomId;
  data['userId'] = entity.userId;
  data['sex'] = entity.sex;
  data['maiIndex'] = entity.maiIndex;
  data['status'] = entity.status;
  data['maiOpen'] = entity.maiOpen;
  data['shangMaiTime'] = entity.shangMaiTime;
  data['xiaMaiTime'] = entity.xiaMaiTime;
  data['liveMinutes'] = entity.liveMinutes;
  data['receiveTokens'] = entity.receiveTokens;
  data['deleteFlag'] = entity.deleteFlag;
  data['roomAnchorStickersList'] =
      entity.roomAnchorStickersList.map((v) => v.toJson()).toList();
  data['musicVO'] = entity.musicVO?.toJson();
  data['avatar'] = entity.avatar;
  data['nick'] = entity.nick;
  return data;
}

extension RoomDataRoomMaisExtension on RoomDataRoomMais {
  RoomDataRoomMais copyWith({
    int? id,
    String? inputStreamId,
    String? outputStreamId,
    int? roomId,
    int? userId,
    int? sex,
    int? maiIndex,
    int? status,
    int? maiOpen,
    String? shangMaiTime,
    String? xiaMaiTime,
    int? liveMinutes,
    int? receiveTokens,
    int? deleteFlag,
    List<RoomDataRoomMaisRoomAnchorStickersList>? roomAnchorStickersList,
    RoomDataRoomMaisMusicVO? musicVO,
    String? avatar,
    String? nick,
  }) {
    return RoomDataRoomMais()
      ..id = id ?? this.id
      ..inputStreamId = inputStreamId ?? this.inputStreamId
      ..outputStreamId = outputStreamId ?? this.outputStreamId
      ..roomId = roomId ?? this.roomId
      ..userId = userId ?? this.userId
      ..sex = sex ?? this.sex
      ..maiIndex = maiIndex ?? this.maiIndex
      ..status = status ?? this.status
      ..maiOpen = maiOpen ?? this.maiOpen
      ..shangMaiTime = shangMaiTime ?? this.shangMaiTime
      ..xiaMaiTime = xiaMaiTime ?? this.xiaMaiTime
      ..liveMinutes = liveMinutes ?? this.liveMinutes
      ..receiveTokens = receiveTokens ?? this.receiveTokens
      ..deleteFlag = deleteFlag ?? this.deleteFlag
      ..roomAnchorStickersList = roomAnchorStickersList ??
          this.roomAnchorStickersList
      ..musicVO = musicVO ?? this.musicVO
      ..avatar = avatar ?? this.avatar
      ..nick = nick ?? this.nick;
  }
}

RoomDataRoomMaisRoomAnchorStickersList $RoomDataRoomMaisRoomAnchorStickersListFromJson(
    Map<String, dynamic> json) {
  final RoomDataRoomMaisRoomAnchorStickersList roomDataRoomMaisRoomAnchorStickersList = RoomDataRoomMaisRoomAnchorStickersList();
  final int? propId = jsonConvert.convert<int>(json['propId']);
  if (propId != null) {
    roomDataRoomMaisRoomAnchorStickersList.propId = propId;
  }
  final int? count = jsonConvert.convert<int>(json['count']);
  if (count != null) {
    roomDataRoomMaisRoomAnchorStickersList.count = count;
  }
  final String? lastTime = jsonConvert.convert<String>(json['lastTime']);
  if (lastTime != null) {
    roomDataRoomMaisRoomAnchorStickersList.lastTime = lastTime;
  }
  return roomDataRoomMaisRoomAnchorStickersList;
}

Map<String, dynamic> $RoomDataRoomMaisRoomAnchorStickersListToJson(
    RoomDataRoomMaisRoomAnchorStickersList entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['propId'] = entity.propId;
  data['count'] = entity.count;
  data['lastTime'] = entity.lastTime;
  return data;
}

extension RoomDataRoomMaisRoomAnchorStickersListExtension on RoomDataRoomMaisRoomAnchorStickersList {
  RoomDataRoomMaisRoomAnchorStickersList copyWith({
    int? propId,
    int? count,
    String? lastTime,
  }) {
    return RoomDataRoomMaisRoomAnchorStickersList()
      ..propId = propId ?? this.propId
      ..count = count ?? this.count
      ..lastTime = lastTime ?? this.lastTime;
  }
}

RoomDataRoomMaisMusicVO $RoomDataRoomMaisMusicVOFromJson(
    Map<String, dynamic> json) {
  final RoomDataRoomMaisMusicVO roomDataRoomMaisMusicVO = RoomDataRoomMaisMusicVO();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataRoomMaisMusicVO.userId = userId;
  }
  final String? nick = jsonConvert.convert<String>(json['nick']);
  if (nick != null) {
    roomDataRoomMaisMusicVO.nick = nick;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataRoomMaisMusicVO.avatar = avatar;
  }
  final int? pointUserId = jsonConvert.convert<int>(json['pointUserId']);
  if (pointUserId != null) {
    roomDataRoomMaisMusicVO.pointUserId = pointUserId;
  }
  final String? pointNick = jsonConvert.convert<String>(json['pointNick']);
  if (pointNick != null) {
    roomDataRoomMaisMusicVO.pointNick = pointNick;
  }
  final String? pointAvatar = jsonConvert.convert<String>(json['pointAvatar']);
  if (pointAvatar != null) {
    roomDataRoomMaisMusicVO.pointAvatar = pointAvatar;
  }
  final String? musicSerialNumber = jsonConvert.convert<String>(
      json['musicSerialNumber']);
  if (musicSerialNumber != null) {
    roomDataRoomMaisMusicVO.musicSerialNumber = musicSerialNumber;
  }
  final int? musicStatus = jsonConvert.convert<int>(json['musicStatus']);
  if (musicStatus != null) {
    roomDataRoomMaisMusicVO.musicStatus = musicStatus;
  }
  final String? musicName = jsonConvert.convert<String>(json['musicName']);
  if (musicName != null) {
    roomDataRoomMaisMusicVO.musicName = musicName;
  }
  final String? createTime = jsonConvert.convert<String>(json['createTime']);
  if (createTime != null) {
    roomDataRoomMaisMusicVO.createTime = createTime;
  }
  return roomDataRoomMaisMusicVO;
}

Map<String, dynamic> $RoomDataRoomMaisMusicVOToJson(
    RoomDataRoomMaisMusicVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['nick'] = entity.nick;
  data['avatar'] = entity.avatar;
  data['pointUserId'] = entity.pointUserId;
  data['pointNick'] = entity.pointNick;
  data['pointAvatar'] = entity.pointAvatar;
  data['musicSerialNumber'] = entity.musicSerialNumber;
  data['musicStatus'] = entity.musicStatus;
  data['musicName'] = entity.musicName;
  data['createTime'] = entity.createTime;
  return data;
}

extension RoomDataRoomMaisMusicVOExtension on RoomDataRoomMaisMusicVO {
  RoomDataRoomMaisMusicVO copyWith({
    int? userId,
    String? nick,
    String? avatar,
    int? pointUserId,
    String? pointNick,
    String? pointAvatar,
    String? musicSerialNumber,
    int? musicStatus,
    String? musicName,
    String? createTime,
  }) {
    return RoomDataRoomMaisMusicVO()
      ..userId = userId ?? this.userId
      ..nick = nick ?? this.nick
      ..avatar = avatar ?? this.avatar
      ..pointUserId = pointUserId ?? this.pointUserId
      ..pointNick = pointNick ?? this.pointNick
      ..pointAvatar = pointAvatar ?? this.pointAvatar
      ..musicSerialNumber = musicSerialNumber ?? this.musicSerialNumber
      ..musicStatus = musicStatus ?? this.musicStatus
      ..musicName = musicName ?? this.musicName
      ..createTime = createTime ?? this.createTime;
  }
}

RoomDataRoomPKVO $RoomDataRoomPKVOFromJson(Map<String, dynamic> json) {
  final RoomDataRoomPKVO roomDataRoomPKVO = RoomDataRoomPKVO();
  final int? roomId = jsonConvert.convert<int>(json['roomId']);
  if (roomId != null) {
    roomDataRoomPKVO.roomId = roomId;
  }
  final int? pkType = jsonConvert.convert<int>(json['pkType']);
  if (pkType != null) {
    roomDataRoomPKVO.pkType = pkType;
  }
  final RoomDataRoomPKVOPkGroupVO? pkGroupVO = jsonConvert.convert<
      RoomDataRoomPKVOPkGroupVO>(json['pkGroupVO']);
  if (pkGroupVO != null) {
    roomDataRoomPKVO.pkGroupVO = pkGroupVO;
  }
  final List<RoomDataRoomPKVOPkUserVOS>? pkUserVOS = (json['pkUserVOS'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<RoomDataRoomPKVOPkUserVOS>(
          e) as RoomDataRoomPKVOPkUserVOS).toList();
  if (pkUserVOS != null) {
    roomDataRoomPKVO.pkUserVOS = pkUserVOS;
  }
  final int? isStart = jsonConvert.convert<int>(json['isStart']);
  if (isStart != null) {
    roomDataRoomPKVO.isStart = isStart;
  }
  final int? minutes = jsonConvert.convert<int>(json['minutes']);
  if (minutes != null) {
    roomDataRoomPKVO.minutes = minutes;
  }
  final String? orderNo = jsonConvert.convert<String>(json['orderNo']);
  if (orderNo != null) {
    roomDataRoomPKVO.orderNo = orderNo;
  }
  final String? createTime = jsonConvert.convert<String>(json['createTime']);
  if (createTime != null) {
    roomDataRoomPKVO.createTime = createTime;
  }
  final int? endSecond = jsonConvert.convert<int>(json['endSecond']);
  if (endSecond != null) {
    roomDataRoomPKVO.endSecond = endSecond;
  }
  return roomDataRoomPKVO;
}

Map<String, dynamic> $RoomDataRoomPKVOToJson(RoomDataRoomPKVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['roomId'] = entity.roomId;
  data['pkType'] = entity.pkType;
  data['pkGroupVO'] = entity.pkGroupVO?.toJson();
  data['pkUserVOS'] = entity.pkUserVOS.map((v) => v.toJson()).toList();
  data['isStart'] = entity.isStart;
  data['minutes'] = entity.minutes;
  data['orderNo'] = entity.orderNo;
  data['createTime'] = entity.createTime;
  data['endSecond'] = entity.endSecond;
  return data;
}

extension RoomDataRoomPKVOExtension on RoomDataRoomPKVO {
  RoomDataRoomPKVO copyWith({
    int? roomId,
    int? pkType,
    RoomDataRoomPKVOPkGroupVO? pkGroupVO,
    List<RoomDataRoomPKVOPkUserVOS>? pkUserVOS,
    int? isStart,
    int? minutes,
    String? orderNo,
    String? createTime,
    int? endSecond,
  }) {
    return RoomDataRoomPKVO()
      ..roomId = roomId ?? this.roomId
      ..pkType = pkType ?? this.pkType
      ..pkGroupVO = pkGroupVO ?? this.pkGroupVO
      ..pkUserVOS = pkUserVOS ?? this.pkUserVOS
      ..isStart = isStart ?? this.isStart
      ..minutes = minutes ?? this.minutes
      ..orderNo = orderNo ?? this.orderNo
      ..createTime = createTime ?? this.createTime
      ..endSecond = endSecond ?? this.endSecond;
  }
}

RoomDataRoomPKVOPkGroupVO $RoomDataRoomPKVOPkGroupVOFromJson(
    Map<String, dynamic> json) {
  final RoomDataRoomPKVOPkGroupVO roomDataRoomPKVOPkGroupVO = RoomDataRoomPKVOPkGroupVO();
  final List<
      RoomDataRoomPKVOPkGroupVOGroupRed>? groupRed = (json['groupRed'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<RoomDataRoomPKVOPkGroupVOGroupRed>(
          e) as RoomDataRoomPKVOPkGroupVOGroupRed).toList();
  if (groupRed != null) {
    roomDataRoomPKVOPkGroupVO.groupRed = groupRed;
  }
  final List<
      RoomDataRoomPKVOPkGroupVOGroupBlue>? groupBlue = (json['groupBlue'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<RoomDataRoomPKVOPkGroupVOGroupBlue>(
          e) as RoomDataRoomPKVOPkGroupVOGroupBlue).toList();
  if (groupBlue != null) {
    roomDataRoomPKVOPkGroupVO.groupBlue = groupBlue;
  }
  final int? tokensRed = jsonConvert.convert<int>(json['tokensRed']);
  if (tokensRed != null) {
    roomDataRoomPKVOPkGroupVO.tokensRed = tokensRed;
  }
  final int? tokensBlue = jsonConvert.convert<int>(json['tokensBlue']);
  if (tokensBlue != null) {
    roomDataRoomPKVOPkGroupVO.tokensBlue = tokensBlue;
  }
  return roomDataRoomPKVOPkGroupVO;
}

Map<String, dynamic> $RoomDataRoomPKVOPkGroupVOToJson(
    RoomDataRoomPKVOPkGroupVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['groupRed'] = entity.groupRed.map((v) => v.toJson()).toList();
  data['groupBlue'] = entity.groupBlue.map((v) => v.toJson()).toList();
  data['tokensRed'] = entity.tokensRed;
  data['tokensBlue'] = entity.tokensBlue;
  return data;
}

extension RoomDataRoomPKVOPkGroupVOExtension on RoomDataRoomPKVOPkGroupVO {
  RoomDataRoomPKVOPkGroupVO copyWith({
    List<RoomDataRoomPKVOPkGroupVOGroupRed>? groupRed,
    List<RoomDataRoomPKVOPkGroupVOGroupBlue>? groupBlue,
    int? tokensRed,
    int? tokensBlue,
  }) {
    return RoomDataRoomPKVOPkGroupVO()
      ..groupRed = groupRed ?? this.groupRed
      ..groupBlue = groupBlue ?? this.groupBlue
      ..tokensRed = tokensRed ?? this.tokensRed
      ..tokensBlue = tokensBlue ?? this.tokensBlue;
  }
}

RoomDataRoomPKVOPkGroupVOGroupRed $RoomDataRoomPKVOPkGroupVOGroupRedFromJson(
    Map<String, dynamic> json) {
  final RoomDataRoomPKVOPkGroupVOGroupRed roomDataRoomPKVOPkGroupVOGroupRed = RoomDataRoomPKVOPkGroupVOGroupRed();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataRoomPKVOPkGroupVOGroupRed.userId = userId;
  }
  final String? nick = jsonConvert.convert<String>(json['nick']);
  if (nick != null) {
    roomDataRoomPKVOPkGroupVOGroupRed.nick = nick;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataRoomPKVOPkGroupVOGroupRed.avatar = avatar;
  }
  final int? tokens = jsonConvert.convert<int>(json['tokens']);
  if (tokens != null) {
    roomDataRoomPKVOPkGroupVOGroupRed.tokens = tokens;
  }
  final int? group = jsonConvert.convert<int>(json['group']);
  if (group != null) {
    roomDataRoomPKVOPkGroupVOGroupRed.group = group;
  }
  return roomDataRoomPKVOPkGroupVOGroupRed;
}

Map<String, dynamic> $RoomDataRoomPKVOPkGroupVOGroupRedToJson(
    RoomDataRoomPKVOPkGroupVOGroupRed entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['nick'] = entity.nick;
  data['avatar'] = entity.avatar;
  data['tokens'] = entity.tokens;
  data['group'] = entity.group;
  return data;
}

extension RoomDataRoomPKVOPkGroupVOGroupRedExtension on RoomDataRoomPKVOPkGroupVOGroupRed {
  RoomDataRoomPKVOPkGroupVOGroupRed copyWith({
    int? userId,
    String? nick,
    String? avatar,
    int? tokens,
    int? group,
  }) {
    return RoomDataRoomPKVOPkGroupVOGroupRed()
      ..userId = userId ?? this.userId
      ..nick = nick ?? this.nick
      ..avatar = avatar ?? this.avatar
      ..tokens = tokens ?? this.tokens
      ..group = group ?? this.group;
  }
}

RoomDataRoomPKVOPkGroupVOGroupBlue $RoomDataRoomPKVOPkGroupVOGroupBlueFromJson(
    Map<String, dynamic> json) {
  final RoomDataRoomPKVOPkGroupVOGroupBlue roomDataRoomPKVOPkGroupVOGroupBlue = RoomDataRoomPKVOPkGroupVOGroupBlue();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataRoomPKVOPkGroupVOGroupBlue.userId = userId;
  }
  final String? nick = jsonConvert.convert<String>(json['nick']);
  if (nick != null) {
    roomDataRoomPKVOPkGroupVOGroupBlue.nick = nick;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataRoomPKVOPkGroupVOGroupBlue.avatar = avatar;
  }
  final int? tokens = jsonConvert.convert<int>(json['tokens']);
  if (tokens != null) {
    roomDataRoomPKVOPkGroupVOGroupBlue.tokens = tokens;
  }
  final int? group = jsonConvert.convert<int>(json['group']);
  if (group != null) {
    roomDataRoomPKVOPkGroupVOGroupBlue.group = group;
  }
  return roomDataRoomPKVOPkGroupVOGroupBlue;
}

Map<String, dynamic> $RoomDataRoomPKVOPkGroupVOGroupBlueToJson(
    RoomDataRoomPKVOPkGroupVOGroupBlue entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['nick'] = entity.nick;
  data['avatar'] = entity.avatar;
  data['tokens'] = entity.tokens;
  data['group'] = entity.group;
  return data;
}

extension RoomDataRoomPKVOPkGroupVOGroupBlueExtension on RoomDataRoomPKVOPkGroupVOGroupBlue {
  RoomDataRoomPKVOPkGroupVOGroupBlue copyWith({
    int? userId,
    String? nick,
    String? avatar,
    int? tokens,
    int? group,
  }) {
    return RoomDataRoomPKVOPkGroupVOGroupBlue()
      ..userId = userId ?? this.userId
      ..nick = nick ?? this.nick
      ..avatar = avatar ?? this.avatar
      ..tokens = tokens ?? this.tokens
      ..group = group ?? this.group;
  }
}

RoomDataRoomPKVOPkUserVOS $RoomDataRoomPKVOPkUserVOSFromJson(
    Map<String, dynamic> json) {
  final RoomDataRoomPKVOPkUserVOS roomDataRoomPKVOPkUserVOS = RoomDataRoomPKVOPkUserVOS();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataRoomPKVOPkUserVOS.userId = userId;
  }
  final String? nick = jsonConvert.convert<String>(json['nick']);
  if (nick != null) {
    roomDataRoomPKVOPkUserVOS.nick = nick;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataRoomPKVOPkUserVOS.avatar = avatar;
  }
  final int? tokens = jsonConvert.convert<int>(json['tokens']);
  if (tokens != null) {
    roomDataRoomPKVOPkUserVOS.tokens = tokens;
  }
  final int? group = jsonConvert.convert<int>(json['group']);
  if (group != null) {
    roomDataRoomPKVOPkUserVOS.group = group;
  }
  return roomDataRoomPKVOPkUserVOS;
}

Map<String, dynamic> $RoomDataRoomPKVOPkUserVOSToJson(
    RoomDataRoomPKVOPkUserVOS entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['nick'] = entity.nick;
  data['avatar'] = entity.avatar;
  data['tokens'] = entity.tokens;
  data['group'] = entity.group;
  return data;
}

extension RoomDataRoomPKVOPkUserVOSExtension on RoomDataRoomPKVOPkUserVOS {
  RoomDataRoomPKVOPkUserVOS copyWith({
    int? userId,
    String? nick,
    String? avatar,
    int? tokens,
    int? group,
  }) {
    return RoomDataRoomPKVOPkUserVOS()
      ..userId = userId ?? this.userId
      ..nick = nick ?? this.nick
      ..avatar = avatar ?? this.avatar
      ..tokens = tokens ?? this.tokens
      ..group = group ?? this.group;
  }
}

RoomDataMusicMsgVO $RoomDataMusicMsgVOFromJson(Map<String, dynamic> json) {
  final RoomDataMusicMsgVO roomDataMusicMsgVO = RoomDataMusicMsgVO();
  final int? requestId = jsonConvert.convert<int>(json['requestId']);
  if (requestId != null) {
    roomDataMusicMsgVO.requestId = requestId;
  }
  final int? musicJumpTokens = jsonConvert.convert<int>(
      json['musicJumpTokens']);
  if (musicJumpTokens != null) {
    roomDataMusicMsgVO.musicJumpTokens = musicJumpTokens;
  }
  final int? musicPropId = jsonConvert.convert<int>(json['musicPropId']);
  if (musicPropId != null) {
    roomDataMusicMsgVO.musicPropId = musicPropId;
  }
  final int? pointPeople = jsonConvert.convert<int>(json['pointPeople']);
  if (pointPeople != null) {
    roomDataMusicMsgVO.pointPeople = pointPeople;
  }
  final int? pointAmount = jsonConvert.convert<int>(json['pointAmount']);
  if (pointAmount != null) {
    roomDataMusicMsgVO.pointAmount = pointAmount;
  }
  final int? numberOneUserId = jsonConvert.convert<int>(
      json['numberOneUserId']);
  if (numberOneUserId != null) {
    roomDataMusicMsgVO.numberOneUserId = numberOneUserId;
  }
  final int? numberOneTokens = jsonConvert.convert<int>(
      json['numberOneTokens']);
  if (numberOneTokens != null) {
    roomDataMusicMsgVO.numberOneTokens = numberOneTokens;
  }
  final List<
      RoomDataMusicMsgVOMusicUsers>? musicUsers = (json['musicUsers'] as List<
      dynamic>?)?.map(
          (e) =>
      jsonConvert.convert<RoomDataMusicMsgVOMusicUsers>(
          e) as RoomDataMusicMsgVOMusicUsers).toList();
  if (musicUsers != null) {
    roomDataMusicMsgVO.musicUsers = musicUsers;
  }
  return roomDataMusicMsgVO;
}

Map<String, dynamic> $RoomDataMusicMsgVOToJson(RoomDataMusicMsgVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['requestId'] = entity.requestId;
  data['musicJumpTokens'] = entity.musicJumpTokens;
  data['musicPropId'] = entity.musicPropId;
  data['pointPeople'] = entity.pointPeople;
  data['pointAmount'] = entity.pointAmount;
  data['numberOneUserId'] = entity.numberOneUserId;
  data['numberOneTokens'] = entity.numberOneTokens;
  data['musicUsers'] = entity.musicUsers.map((v) => v.toJson()).toList();
  return data;
}

extension RoomDataMusicMsgVOExtension on RoomDataMusicMsgVO {
  RoomDataMusicMsgVO copyWith({
    int? requestId,
    int? musicJumpTokens,
    int? musicPropId,
    int? pointPeople,
    int? pointAmount,
    int? numberOneUserId,
    int? numberOneTokens,
    List<RoomDataMusicMsgVOMusicUsers>? musicUsers,
  }) {
    return RoomDataMusicMsgVO()
      ..requestId = requestId ?? this.requestId
      ..musicJumpTokens = musicJumpTokens ?? this.musicJumpTokens
      ..musicPropId = musicPropId ?? this.musicPropId
      ..pointPeople = pointPeople ?? this.pointPeople
      ..pointAmount = pointAmount ?? this.pointAmount
      ..numberOneUserId = numberOneUserId ?? this.numberOneUserId
      ..numberOneTokens = numberOneTokens ?? this.numberOneTokens
      ..musicUsers = musicUsers ?? this.musicUsers;
  }
}

RoomDataMusicMsgVOMusicUsers $RoomDataMusicMsgVOMusicUsersFromJson(
    Map<String, dynamic> json) {
  final RoomDataMusicMsgVOMusicUsers roomDataMusicMsgVOMusicUsers = RoomDataMusicMsgVOMusicUsers();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataMusicMsgVOMusicUsers.userId = userId;
  }
  final int? receiveTokens = jsonConvert.convert<int>(json['receiveTokens']);
  if (receiveTokens != null) {
    roomDataMusicMsgVOMusicUsers.receiveTokens = receiveTokens;
  }
  final int? jumpNeedTokens = jsonConvert.convert<int>(json['jumpNeedTokens']);
  if (jumpNeedTokens != null) {
    roomDataMusicMsgVOMusicUsers.jumpNeedTokens = jumpNeedTokens;
  }
  final int? musicStatus = jsonConvert.convert<int>(json['musicStatus']);
  if (musicStatus != null) {
    roomDataMusicMsgVOMusicUsers.musicStatus = musicStatus;
  }
  final int? receiveTime = jsonConvert.convert<int>(json['receiveTime']);
  if (receiveTime != null) {
    roomDataMusicMsgVOMusicUsers.receiveTime = receiveTime;
  }
  return roomDataMusicMsgVOMusicUsers;
}

Map<String, dynamic> $RoomDataMusicMsgVOMusicUsersToJson(
    RoomDataMusicMsgVOMusicUsers entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['receiveTokens'] = entity.receiveTokens;
  data['jumpNeedTokens'] = entity.jumpNeedTokens;
  data['musicStatus'] = entity.musicStatus;
  data['receiveTime'] = entity.receiveTime;
  return data;
}

extension RoomDataMusicMsgVOMusicUsersExtension on RoomDataMusicMsgVOMusicUsers {
  RoomDataMusicMsgVOMusicUsers copyWith({
    int? userId,
    int? receiveTokens,
    int? jumpNeedTokens,
    int? musicStatus,
    int? receiveTime,
  }) {
    return RoomDataMusicMsgVOMusicUsers()
      ..userId = userId ?? this.userId
      ..receiveTokens = receiveTokens ?? this.receiveTokens
      ..jumpNeedTokens = jumpNeedTokens ?? this.jumpNeedTokens
      ..musicStatus = musicStatus ?? this.musicStatus
      ..receiveTime = receiveTime ?? this.receiveTime;
  }
}

RoomDataToppingVO $RoomDataToppingVOFromJson(Map<String, dynamic> json) {
  final RoomDataToppingVO roomDataToppingVO = RoomDataToppingVO();
  final int? roomId = jsonConvert.convert<int>(json['roomId']);
  if (roomId != null) {
    roomDataToppingVO.roomId = roomId;
  }
  final int? maiIndex = jsonConvert.convert<int>(json['maiIndex']);
  if (maiIndex != null) {
    roomDataToppingVO.maiIndex = maiIndex;
  }
  return roomDataToppingVO;
}

Map<String, dynamic> $RoomDataToppingVOToJson(RoomDataToppingVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['roomId'] = entity.roomId;
  data['maiIndex'] = entity.maiIndex;
  return data;
}

extension RoomDataToppingVOExtension on RoomDataToppingVO {
  RoomDataToppingVO copyWith({
    int? roomId,
    int? maiIndex,
  }) {
    return RoomDataToppingVO()
      ..roomId = roomId ?? this.roomId
      ..maiIndex = maiIndex ?? this.maiIndex;
  }
}

RoomDataJoinTrainVO $RoomDataJoinTrainVOFromJson(Map<String, dynamic> json) {
  final RoomDataJoinTrainVO roomDataJoinTrainVO = RoomDataJoinTrainVO();
  final int? userId = jsonConvert.convert<int>(json['userId']);
  if (userId != null) {
    roomDataJoinTrainVO.userId = userId;
  }
  final String? nick = jsonConvert.convert<String>(json['nick']);
  if (nick != null) {
    roomDataJoinTrainVO.nick = nick;
  }
  final String? avatar = jsonConvert.convert<String>(json['avatar']);
  if (avatar != null) {
    roomDataJoinTrainVO.avatar = avatar;
  }
  final String? userCode = jsonConvert.convert<String>(json['userCode']);
  if (userCode != null) {
    roomDataJoinTrainVO.userCode = userCode;
  }
  final int? roomId = jsonConvert.convert<int>(json['roomId']);
  if (roomId != null) {
    roomDataJoinTrainVO.roomId = roomId;
  }
  return roomDataJoinTrainVO;
}

Map<String, dynamic> $RoomDataJoinTrainVOToJson(RoomDataJoinTrainVO entity) {
  final Map<String, dynamic> data = <String, dynamic>{};
  data['userId'] = entity.userId;
  data['nick'] = entity.nick;
  data['avatar'] = entity.avatar;
  data['userCode'] = entity.userCode;
  data['roomId'] = entity.roomId;
  return data;
}

extension RoomDataJoinTrainVOExtension on RoomDataJoinTrainVO {
  RoomDataJoinTrainVO copyWith({
    int? userId,
    String? nick,
    String? avatar,
    String? userCode,
    int? roomId,
  }) {
    return RoomDataJoinTrainVO()
      ..userId = userId ?? this.userId
      ..nick = nick ?? this.nick
      ..avatar = avatar ?? this.avatar
      ..userCode = userCode ?? this.userCode
      ..roomId = roomId ?? this.roomId;
  }
}